package com.monitoring.management.mappers;

import com.monitoring.management.core.command.query.QueryUserCommand;
import com.monitoring.management.core.dto.UserDTO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;

@Component
public interface UserMapper {
    int deleteByPrimaryKey(String id);

    int insert(UserDTO record);

    int insertSelective(UserDTO record);

    UserDTO selectByUserName(String userName);

    UserDTO selectByPrimaryKey(String id);

    int getCountByCondition(@Param("queryUserCommand") QueryUserCommand queryUserCommand);

    int updateByPrimaryKeySelective(UserDTO record);

    List<UserDTO> pageByCondition(@Param("pageStart") long pageIndex, @Param("pageSize") int pageSize, @Param("queryUserCommand") QueryUserCommand queryCond);

    int updateByPrimaryKey(UserDTO record);

    List<UserDTO> selectUserByID(@Param("ID") String supplierId);

    int insertUsers(@Param("list") List<UserDTO> list,String userId);

}